package com.yao.ecommerce.service;

import com.yao.ecommerce.vo.UsernameAndPassword;

/**
 *  JWT 相关服务接口定义
 */
public interface IJWTService {
    /**
     * <h2> 生成JWT Token ,使用默认超长时间</h2>
     * @param username
     * @param password
     * @return
     * @throws Exception
     */
    String generateToken(String username , String password) throws  Exception;

    /**
     * <h2>生成指定超时时间的 Token, 单位是天</h2>
     * @param username
     * @param password
     * @param expire
     * @return
     * @throws Exception
     */
    String generateToken(String username, String password , int expire) throws Exception;


    /**
     * <h2>注册用户并生成 Token 返回</h2>
     * @param usernameAndPassword
     * @return
     * @throws Exception
     */
    String registerUserAndGenerateToken(UsernameAndPassword usernameAndPassword)
            throws Exception;

}
